package com.example.banksystem.entity;



/**
 * 存款类型枚举（包含活期和定期，存储利率和期限）
 */
public enum DepositType {
    // 活期（0期限，0.05%利率）
    CURRENT(0, 0.0005, "活期"),
    // 定期（期限：月，利率：小数，描述）
    FIXED_3_MONTHS(3, 0.0105, "三个月定期"),
    FIXED_6_MONTHS(6, 0.0125, "半年定期"),
    FIXED_1_YEAR(12, 0.0150, "一年定期"),
    FIXED_2_YEARS(24, 0.0155, "两年定期"),
    FIXED_3_YEARS(36, 0.0175, "三年定期"),
    FIXED_5_YEARS(60, 0.0170, "五年定期");

    private final int termMonths; // 期限（月）
    private final double rate;    // 年利率（小数）
    private final String desc;    // 显示名称（用于前端）

    DepositType(int termMonths, double rate, String desc) {
        this.termMonths = termMonths;
        this.rate = rate;
        this.desc = desc;
    }

    // getter方法
    public int getTermMonths() { return termMonths; }
    public double getRate() { return rate; }
    public String getDesc() { return desc; }
}

